FIG. 1 is a block diagram of a conventional architecture 10 for manufacturing a computer system. The conventional architecture 10 includes a Level 2 server 12. There is one level 2 server per physical line. The level 2 server 12 receives information for manufacturing a particular system under test (SUT). The level 2 server functions as an image repository and a legacy code repository. The level 2 server 12 is coupled to an Ethernet switch 13. The Ethernet switch 13 provides access to a plurality of level 1 servers. The level 1 server 14 includes a Windows-based server, a PXE Server (DOS only), and a DHCP Server. The level 1 server 14 is capable of preloading the appropriate image on each of a plurality of SUTs 18.
Traditional computer manufacturing processes such as those illustrated in FIG. 1 rely on two things. First, they rely on local media to boot an SUT in the “manufacturing environment,” that is a pre-boot environment. At this point, the SUT has no operating system, minimal resources and minimal capabilities. The media could be an internal or external diskette, CD-ROM, or a USB memory device. Secondly, they rely on booting one particular operating system that the manufacturing process tools are standardized on. For example, the manufacturing process may be DOS-based or Linux-based. Once the OS is booted, additional process data can be obtained from the boot device, a network connection, or an HDD that was preloaded prior to machine assembly. If more than one operating system is required, the operator is required to “change media” and re-boot. Managing different boot media requires boot media creation, labeling, wear management, and level control. Using local boot media also presumes that this media exists on all products or that a slave device such as a USB diskette drive can be inserted and removed from the process as necessary.
Software services exist that are written to the particular standards, such as the Intel PXE standard. These services provide a way for a known MAC address to be bound to an image based on tables that are set up in advance of the boot event. Alternatively, the service can be configured such that all machines of a given architecture get the same boot image. However, this does not provide a way to specify what image a particular SUT gets when the MAC address is unknown until runtime. In addition, there is no mechanism for selecting an image from a set of images based on where an SUT is within the process.
In addition, there are many “server dense” architectures such as the BladeCenter system manufactured by IBM Corporation. In such an architecture a single SUT includes up to 14 separate processing units therein. Typically, each of the processing units requires different operating system configurations. There is no simple solution to specify images for each of the different processing units.
Competitors, particularly those that do small volumes, may choose to handle manufacturing requirements manually using highly-trained operators. However, the lack of automation would reduce quality due to human error. A high-volume manufacturer will find a manual process unacceptable.
Accordingly, what is needed is a system and method for overcoming the above-identified problem. The present invention addresses such a need.